Skip to main content

Professor

Professors are a representation of an insturctor on campus for a Course. Professors can be queried to find information regarding their professional information and office hours information.

A Professor Object contains the following properties:

Properties

NameTypeRequiredRestrictionsDescription
_idstringtruenoneThe MongoDB database id for the Professor object.
first_namestringtruenoneThe professor's first name.
last_namestringtruenoneThe professor's last name.
titles[string]falsenoneThe professor's titles. Example: ["Senior Mathematics Lecturer"], ["Lars Magnus Ericsson Chair", "Dean – Erik Jonsson School of Engineering and Computer Science"]
emailstringtruenoneThe professor's email address.
phone_numberstringfalsenoneThe professor's phone number.
officeLocationfalsenoneThe location of the professor's office.
profile_uristringfalsenoneA hyperlink pointing to the professor's official university profile.
image_uristringfalsenoneA link to the image used for the professor on the professor's official university profile.
office_hours[Meeting]falsenoneA list of all office hours of the professor.
sections[string]falsenoneA list of references to sections a professor is currently teaching or has taught. This will be sorted in descending order with respect to end_date in the section's academic_session

Querying a Professor

There are two main ways to query for a professor:

  1. By Query Paramters
  2. By ID

Each of these methods has its own API endpoint to get the requested data.

GET /professor

The default endpoint for /professor returns a list of professors matching the set of query parameters provided.

Below is a list of all of the parameters that can be used to refine your query:

Parameters

NameInTypeRequiredDescription
first_namequerystringfalseThe professor's first name
last_namequerystringfalseThe professor's last name
titlesquerystringfalseOne of the professor's title
emailquerystringfalseThe professor's email address
phone_numberquerystringfalseThe professor's phone number
office.buildingquerystringfalseThe building of the location of the professor's office
office.roomquerystringfalseThe room of the location of the professor's office
office.map_uriquerystringfalseA hyperlink to the UTD room locator of the professor's office
profile_uriquerystringfalseA hyperlink pointing to the professor's official university profile
image_uriquerystringfalseA link to the image used for the professor on the professor's official university profile
office_hours.start_datequerystringfalseThe start date of one of the office hours meetings of the professor
office_hours.end_datequerystringfalseThe end date of one of the office hours meetings of the professor
office_hours.meeting_daysquerystringfalseOne of the days that one of the office hours meetings of the professor
office_hours.start_timequerystringfalseThe time one of the office hours meetings of the professor starts
office_hours.end_timequerystringfalseThe time one of the office hours meetings of the professor ends
office_hours.modalityquerystringfalseThe modality of one of the office hours meetings of the professor
office_hours.location.buildingquerystringfalseThe building of one of the office hours meetings of the professor
office_hours.location.roomquerystringfalseThe room of one of the office hours meetings of the professor
office_hours.location.map_uriquerystringfalseA hyperlink to the UTD room locator of one of the office hours meetings of the professor
sectionsquerystringfalseThe _id of one of the sections the professor teaches

Example responses

200 Response

[
{
"_id": "string",
"first_name": "string",
"last_name": "string",
"titles": ["string"],
"email": "string",
"phone_number": "string",
"office": {
"building": "string",
"room": "string",
"map_uri": "string"
},
"profile_uri": "string",
"image_uri": "string",
"office_hours": [
{
"start_date": "string",
"end_date": "string",
"meeting_days": ["string"],
"start_time": "string",
"end_time": "string",
"modality": "string",
"location": {
"building": "string",
"room": "string",
"map_uri": "string"
}
}
],
"sections": ["string"]
}
]

GET /professor/{id}

This endpoint returns a single Professor object with a primary key matching {id}.

Parameters

NameInTypeRequiredDescription
idpathstringtrueID of the professor to get

Example responses

200 Response

{
"_id": "string",
"first_name": "string",
"last_name": "string",
"titles": ["string"],
"email": "string",
"phone_number": "string",
"office": {
"building": "string",
"room": "string",
"map_uri": "string"
},
"profile_uri": "string",
"image_uri": "string",
"office_hours": [
{
"start_date": "string",
"end_date": "string",
"meeting_days": ["string"],
"start_time": "string",
"end_time": "string",
"modality": "string",
"location": {
"building": "string",
"room": "string",
"map_uri": "string"
}
}
],
"sections": ["string"]
}